Flat ORAM: A Simplified Write-Only Oblivious RAM Construction for Secure Processors
نویسندگان
چکیده
Oblivious RAM (ORAM) is a cryptographic primitive which obfuscates the access paerns to a storage thereby preventing privacy leakage. So far in the current literature, only ‘fully functional’ ORAMs are widely studied which can protect, at a cost of considerable performance penalty, against the strong adversaries who can monitor all read and write operations. However, recent research has shown that information can still be leaked even if only the write access paern (not reads) is visible to the adversary. For such weaker adversaries, a fully functional ORAM turns out to be an overkill causing unnecessary overheads. Instead, a simple ‘writeonly’ ORAM is sucient, and, more interestingly, is preferred as it can oer far more performance and energy eciency than a fully functional ORAM. In this work, we present Flat ORAM: an ecient write-only ORAM scheme which outperforms the closest existing write-only ORAM called HIVE. HIVE suers from performance bolenecks while managing the memory occupancy information vital for correctness of the protocol. Flat ORAM resolves these bolenecks by introducing a simple idea of Occupancy Map (OccMap) which eciently manages the memory occupancy information resulting in far beer performance. Our simulation results show that, on average, Flat ORAM only incurs a moderate slowdown of 3× over the insecure DRAM for memory intensive benchmarks among Splash2 and 1.6× for SPEC06. Compared to HIVE, Flat ORAM oers 50% performance gain on average and up to 80% energy savings.
منابع مشابه
Unified Oblivious-RAM: Improving Recursive ORAM with Locality and Pseudorandomness
Oblivious RAM (ORAM) is a cryptographic primitive that hides memory access patterns to untrusted storage. ORAM may be used in secure processors for encrypted computation and/or software protection. While recursive Path ORAM is currently the most practical ORAM for secure processors, it still incurs large performance and energy overhead and is the performance bottleneck of recently proposed secu...
متن کاملOblivious Computation with Data Locality
Oblivious RAM compilers, introduced by Goldreich and Ostrovsky [JACM’96], compile any RAM program into one that is “memory-oblivious” (i.e., the access pattern to the memory is independent of the input). All previous ORAM schemes, however, completely break the locality of data accesses (by shuffling the data to pseudorandom positions in memory). In this work, we initiate the study of locality-f...
متن کاملDesign space exploration and optimization of path oblivious RAM in secure processors Citation
Keeping user data private is a huge problem both in cloud computing and computation outsourcing. One paradigm to achieve data privacy is to use tamper-resistant processors, inside which users’ private data is decrypted and computed upon. These processors need to interact with untrusted external memory. Even if we encrypt all data that leaves the trusted processor, however, the address sequence ...
متن کاملPath ORAM: An Extremely Simple Oblivious RAM Protocol Citation
We present Path ORAM, an extremely simple Oblivious RAM protocol with a small amount of client storage. Partly due to its simplicity, Path ORAM is the most practical ORAM scheme known to date with small client storage. We formally prove that Path ORAM has a O(logN) bandwidth cost for blocks of size B = Ω(logN) bits. For such block sizes, Path ORAM is asymptotically better than the best known OR...
متن کاملThe Pyramid Scheme: Oblivious RAM for Trusted Processors
Modern processors, e.g., Intel SGX, allow applications to isolate secret code and data in encrypted memory regions called enclaves. While encryption effectively hides the contents of memory, the sequence of address references issued by the secret code leaks information. This is a serious problem because these leaks can easily break the confidentiality guarantees of enclaves. In this paper, we e...
متن کامل